package co.edu.usbcali.lidis.vista;

import java.awt.BorderLayout;
import java.awt.Image;
import java.awt.Toolkit;
import java.util.List;

import javax.swing.JFrame;

import co.edu.usbcali.lidis.dataaccess.daoFactory.FachadaBaseDeDatos;
import co.edu.usbcali.lidis.modelo.Proyecto;
import co.edu.usbcali.lidis.modelo.Usuario;

@SuppressWarnings("serial")
public class PantallaMenu extends javax.swing.JFrame {
	private Usuario usuario;

	public PantallaMenu(int idUsuario) {
		System.out.println("idUsuario Pantalla menu: " + idUsuario);
		setUndecorated(true);
		usuario = new Usuario();
		usuario.setUsuId(idUsuario);
		initComponents();
		String path = System.getProperty("user.dir");
		Panel p = new Panel(path + "");
		getContentPane().add(p, BorderLayout.CENTER);
		this.pack();
		setSize(400, 200);
	}

	private void initComponents() {

		btnVerProyectos = new javax.swing.JButton();
		btnSalir = new javax.swing.JButton();
		btnCrearPropuesta = new javax.swing.JButton();

		setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
		setTitle("Menu Proyectos");
		setCursor(new java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR));
		setForeground(java.awt.Color.white);
		setIconImage(getIconImage());

		btnVerProyectos.setMnemonic('1');
		btnVerProyectos.setText("Ver Proyectos");

		btnVerProyectos.addActionListener(new java.awt.event.ActionListener() {
			public void actionPerformed(java.awt.event.ActionEvent evt) {
				btnVerProyectosActionPerformed(evt);
			}
		});

		btnSalir.setMnemonic('s');
		btnSalir.setText("Salir");
		btnSalir.addActionListener(new java.awt.event.ActionListener() {
			public void actionPerformed(java.awt.event.ActionEvent evt) {
				btnSalirActionPerformed(evt);
			}
		});

		btnCrearPropuesta.setMnemonic('1');
		btnCrearPropuesta.setText("Crear Propuesta");

		btnCrearPropuesta
				.addActionListener(new java.awt.event.ActionListener() {
					public void actionPerformed(java.awt.event.ActionEvent evt) {
						btnCrearPropuestaActionPerformed(evt);
					}
				});

		javax.swing.GroupLayout layout = new javax.swing.GroupLayout(
				getContentPane());
		getContentPane().setLayout(layout);
		layout.setHorizontalGroup(layout
				.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
				.addGroup(
						layout.createSequentialGroup()
								.addGroup(
										layout.createParallelGroup(
												javax.swing.GroupLayout.Alignment.LEADING)
												.addGroup(
														layout.createSequentialGroup()
																.addGap(70, 70,
																		70)
																.addComponent(
																		btnVerProyectos)
																.addGap(28, 28,
																		28)
																.addComponent(
																		btnCrearPropuesta))
												.addGroup(
														layout.createSequentialGroup()
																.addGap(160,
																		160,
																		160)
																.addComponent(
																		btnSalir)))
								.addContainerGap(91, Short.MAX_VALUE)));
		layout.setVerticalGroup(layout
				.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
				.addGroup(
						layout.createSequentialGroup()
								.addGap(71, 71, 71)
								.addGroup(
										layout.createParallelGroup(
												javax.swing.GroupLayout.Alignment.BASELINE)
												.addComponent(btnVerProyectos)
												.addComponent(btnCrearPropuesta))
								.addGap(36, 36, 36).addComponent(btnSalir)
								.addContainerGap(52, Short.MAX_VALUE)));

		setSize(new java.awt.Dimension(415, 244));
		setLocationRelativeTo(null);
	}// </editor-fold>

	private void btnSalirActionPerformed(java.awt.event.ActionEvent evt) {
		PantallaInicio pantallaInicio=new PantallaInicio();
		pantallaInicio.setSize(510, 302);
		pantallaInicio.setVisible(true);
		pantallaInicio.setLocationRelativeTo(null);
		dispose();
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);	
	}

	private void btnVerProyectosActionPerformed(java.awt.event.ActionEvent evt) {
		try {
			List<Proyecto> listProyectos = FachadaBaseDeDatos.getInstance()
					.allProyectos();

			System.out.println(usuario.getUsuId() + " " + listProyectos);
			PantallaProyectos pantallaProyectos = new PantallaProyectos(
					usuario.getUsuId(), listProyectos);
			pantallaProyectos.setSize(540, 424);
			pantallaProyectos.setVisible(true);
			pantallaProyectos.setLocationRelativeTo(null);
			dispose();
			setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	private void btnCrearPropuestaActionPerformed(java.awt.event.ActionEvent evt) {
		PantallaPropuesta pantallaPropuesta = new PantallaPropuesta(
				usuario.getUsuId(), null);
		pantallaPropuesta.setSize(562, 660);
		pantallaPropuesta.setVisible(true);
		pantallaPropuesta.setLocationRelativeTo(null);
		dispose();
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	}

	@Override
	public Image getIconImage() {
		String path = System.getProperty("user.dir");
		System.out.println(path);
		Toolkit toolkit = Toolkit.getDefaultToolkit();
		Image retValue = toolkit.getImage(path + "/imagenes/icono.png");
		return retValue;
	}

	// Variables declaration - do not modify
	private javax.swing.JButton btnVerProyectos;
	private javax.swing.JButton btnCrearPropuesta;
	private javax.swing.JButton btnSalir;
	// End of variables declaration
}
